#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>

#include "TParser.h"


int main(int argu, char* argv[])
{
    TParser p;
    TLexico aLexico;
    TSintactico aSintactico;

    TParser_Crear(&p);
    TLexico_Crear(&aLexico);
	TSintactico_Crear(&aSintactico);


	TLexico_setAnalizadorSintactico(&aLexico,&aSintactico);
	TParser_setAnalizadorLexico(&p,&aLexico);


    FILE* file = fopen(argv[1], "r");

    /*FILE* file = fopen("caso 06 - negativo - sint.in", "r");*/

    printf("\n\n");

    if(file == NULL)
    {
    	printf("Archivo no encontrado");
        return 1;
    }
      while (feof(file) == 0 )
     {
        char c = fgetc(file);


        TParser_PushChar(&p, c);
     }

     fclose(file);


    TParser_terminarFlujo(&p);

    printf("\n\n");

    int codigoError = 0;
    char mensajeError[100];

    TSintactico_getUltimoError(&aSintactico,&codigoError,&mensajeError);

    if(codigoError>0)
    {
        printf("Codigo Error:%d  \nMensaje Error: %s\n\n",codigoError,mensajeError);
    }

    TLexico_getUltimoError(&aLexico,&codigoError,&mensajeError);

    if(codigoError>0)
    {
        printf("Codigo Error:%d  \nMensaje Error: %s\n\n",codigoError,mensajeError);
    }


    return 0;
}
